<?php
include("../logica/MainImport.php");
// Incluye la fachada de base de datos.
//include_once($_SERVER['DOCUMENT_ROOT']."../bd/FachadaBD.php");
class Usuario extends ObjetoPersistente {
   
    var $correo;
    var $nombre;
    var $apellido;
    var $universidad;
    var $password;
    var $justificacion;
    var $profesorEncargado;
    var $tipoUsuario;

    public function __construct($correo, $nombre, $apellido, $universidad, $password,$justificacion, $profesorEncargado,$tipoUsuario) {
        $this->correo = $correo;
        $this->nombre = $nombre;
        $this->apellido = $apellido;
        $this->universidad = $universidad;
        $this->password = $password;
        $this->justificacion = $justificacion;
        $this->profesorEncargado = $profesorEncargado;
        $this->tipoUsuario = $tipoUsuario;
    }

    public function getCorreo() {
        return $this->correo;
    }

    public function getNombre() {
        return $this->nombre;
    }

    public function getApellido() {
        return $this->apellido;
    }

    public function getUniversidad() {
        return $this->universidad;
    }

    public function getPassword() {
        return $this->password;
    }

    public function getJustificacion() {
        return $this->justificacion;
    }

    public function getProfesorEncargado() {
        return $this->profesorEncargado;
    }

    public function getTipoUsuario() {
        return $this->tipoUsuario;
    }


    public function save() {
        echo "Solicitud Salvada: ".$this->getCorreo();
    }

    public function delete() {
        throw new Exception('No Soportado');
    }

    // Inserta una persona Afectada en la base de datos.
    function insertarUsuario(){
		
        //Llama a la fachada de base de datos.
        $fbd = FachadaBD::getInstance();

        // Inserta en la base de datos la instancia actual de la persona
        // afectada.
        $fbd->insertarUsuario($this);
    }
	
	function existeUsuario($correo){

        //Llama a la fachada de base de datos.
        $fbd = FachadaBD::getInstance();

        // Inserta en la base de datos la instancia actual de la persona
        // afectada.
        $Usuario_exist = $fbd->existeUsuario($correo);

        return $Usuario_exist;

    }

    function desactivarUsuario($correo){

        //Llama a la fachada de base de datos.
        $fbd = FachadaBD::getInstance();

        // Inserta en la base de datos la instancia actual de la persona
        // afectada.
        $result = $fbd->desactivarUsuario($correo);

        return $result;

    }

        function activarUsuario($correo){

        //Llama a la fachada de base de datos.
        $fbd = FachadaBD::getInstance();

        // Inserta en la base de datos la instancia actual de la persona
        // afectada.
        $result = $fbd->activarUsuario($correo);

        return $result;

    }
}

?>